<HTML>

<HEAD>
   <TITLE>Chapter 1 -- Games on the Web</TITLE>
   <META>
</HEAD>
<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000EE" VLINK="#551A8B" ALINK="#CE2910">
<H1><FONT COLOR=#FF0000>Chapter 1</FONT></H1>
<H1><B><FONT SIZE=5 COLOR=#FF0000>Games on the Web</FONT></B>
</H1>
<P>
<HR WIDTH="100%"></P>
<P>
<H3 ALIGN=CENTER><FONT COLOR="#000000"><FONT SIZE=+2>CONTENTS<A NAME="CONTENTS"></A>
</FONT></FONT></H3>

<UL>
<LI><A HREF="#TheStateoftheNet" >The State of the Net</A>
<LI><A HREF="#WhattheWebHastoOffer" >What the Web Has to Offer</A>
<UL>
<LI><A HREF="#WebBasedversusNonWebBasedGames" >Web-Based versus Non-Web Based Games</A>
</UL>
<LI><A HREF="#NonJavaBasedGames" >Non-Java Based Games</A>
<UL>
<LI><A HREF="#Mpath" >Mpath</A>
<LI><A HREF="#CyberWarriorNetwork" >Cyber Warrior Network</A>
<LI><A HREF="#ImagiNationNetwork" >ImagiNation Network</A>
<LI><A HREF="#TotalEntertainmentNetwork" >Total Entertainment Network</A>
<LI><A HREF="#Outland" >Outland</A>
<LI><A HREF="#SimNet" >Sim-Net</A>
</UL>
<LI><A HREF="#JavaBasedWebGames" >Java-Based Web Games</A>
<UL>
<LI><A HREF="#Avalon" >Avalon</A>
<LI><A HREF="#InternetMahJongServer" >Internet MahJong Server</A>
<LI><A HREF="#iChess" >iChess</A>
<LI><A HREF="#Unearthed" >Unearthed</A>
</UL>
<LI><A HREF="#Summary" >Summary</A>
<LI><A HREF="#QA" >Q&amp;A</A>
<LI><A HREF="#Workshop" >Workshop</A>
<UL>
<LI><A HREF="#Quiz" >Quiz</A>
<LI><A HREF="#Exercises" >Exercises</A>
</UL>
</UL>
<HR>
<P>
The Internet and the World Wide Web have energized the already
fast-moving world of computing and created previously unthinkable
opportunities for communication between computer users. One of
the most talked about areas of application for the Web is games.
When games are networked on a global scale, they offer a plethora
of entertainment possibilities for users. Gaming on the Web will
truly change the way we all view entertainment, primarily because
it blurs cultural boundaries much like the Internet itself does.
<P>
Throughout the next 21 days, you learn how to develop games for
the Web using Java. You begin with the basics and move on to learning
advanced topics such as networking and artificial intelligence.
By the end of the book, you'll have all the information and knowledge
necessary to develop your own Java games. And it all begins today!
<P>
Today's lesson focuses on the current state of the Internet as
a whole, the Web in particular, and how they both impact gaming.
Although the point of this book is to develop Internet games using
Java, understanding the current scenario surrounding games on
the Internet is a major first step in seeing the relevance of
writing games in Java. Therefore, with that in mind, buckle up
and prepare yourself for a journey through gaming on the Web!
<P>
The following topics are covered in today's lesson:
<UL>
<LI>The state of the Net
<LI>What the Web has to offer
<LI>Internet games
<LI>Java-based Web games
</UL>
<H2><A NAME="TheStateoftheNet"><B><FONT SIZE=5 COLOR=#FF0000>The
State of the Net</FONT></B></A></H2>
<P>
With all of the media attention that is focused on the Internet
and the World Wide Web, figuring out exactly what they are all
about is sometimes difficult. Are they just a neat new way to
market products or will they truly offer us a new medium of communication
that will someday surpass even televisions and telephones? The
answer is, who knows? Unfortunately, the ultimate use for the
Internet is still unknown. This is because it is still in such
a state of flux that it's pretty much impossible to accurately
predict where it will end up. However, you can look at the evidence
of what is there now and gain some insight into what the Internet
might become, at least in terms of games.
<P>
The Web as most people know it consists of a tangled mess of hypertext
documents containing text, images, and sound. For the most part,
it has consisted of static information; you can search and browse
and generate some things on the fly, but Web content is pretty
much fixed, at least from a user's perspective. A wide range of
add-ons and extensions have begun to appear that promise interactivity
and new types of media. These extensions offer everything from
movie clips and CD-quality audio to a hot meal embedded right
there in a Web page. OK, maybe I'm exaggerating a little, but
you get the idea.
<P>
No extension to the Web has generated more excitement than Java,
which offers complete interactivity within the traditional Web
environment. With Java, you have the ability to create full-featured,
interactive applications and embed them in the middle of a Web
page. It is probably not a shock to you to hear that Java is the
technology touted as bringing the Web, and in turn the Internet,
to the masses. Therefore, although the Web is already receiving
much attention on its own accord, the Internet landscape is rapidly
changing to accommodate the opportunities and benefits of Java.
<H2><A NAME="WhattheWebHastoOffer"><B><FONT SIZE=5 COLOR=#FF0000>What
the Web Has to Offer</FONT></B></A></H2>
<P>
The concept of looking at the Web, and the Internet as a whole,
as a medium for games is relatively new. It has been technically
possible to link games and transfer data over an Internet connection
for a while now, but that's only one facet of gaming on the Internet.
The next generation of Internet games will more than likely move
away from the Internet as simply a communication medium. More
likely, the next generation of games will be integrated into the
rapidly expanding Web environment.
<P>
The marriage of games and the Web is a natural one; like the Web,
games are very content-driven, meaning that they are very much
dependent on the graphics, sound, and other content that makes
them interesting. It makes sense to use the Web to not only browse
information, but also to act on that information. It might sound
strange to look at games as information systems, but that's really
all they are (as is all software). When you view a game in terms
of simply being an information system, it's easier to see what
the Web has to offer gaming.
<P>
The Web is a relatively stable, content-driven, globally distributed
environment. The fact that it is stable isn't quite as defining
because most operating systems are already fairly stable. Knowing
this, it's safe to say that few people would look to the Web as
a gaming environment based on its stability alone. Therefore,
you have to look to the other two items to see what's important
about the Web in regard to games. The fact that the Web is content-driven
is important because games are content-driven themselves, and
therefore fit naturally into the Web environment. However, this
is more of a convenience than a compelling reason to move games
to the Web.
<P>
The real appeal of moving games to the Web is the fact that the
Web is globally distributed. As a result, the Web has a massive
global user base that is growing by leaps and bounds even as you
read this. What better appeal for a gaming environment than a
lot of people anxious to see what the Web can do for them? Even
though it's exciting to think of people around the world playing
games on the Web, I think the real dynamic in this situation is
the idea of these people playing games together.
<P>
Even with the prevalence of telephones, interactive communication
of a global nature is still very limited. With interactive Web
games, you're going far beyond sharing a recipe with someone on
the other side of the world; you're exploring dungeons with them
or dunking over them in a game of basketball. To me, this whole
prospect is just too cool! So, if you haven't gotten the point,
I think the Web offers the ultimate gaming environment because
of the opportunities it affords for people from all places to
interact, have fun, and most important, learn about each other.
<P>
<CENTER><TABLE BORDERCOLOR=#000000 BORDER=1 WIDTH=80%>
<TR><TD><B>Note</B></TD></TR>
<TR><TD>
<BLOCKQUOTE>
You might not immediately think of games as a cultural vehicle for learning about other people, but consider the fact that most traditional (noncomputer) children's games have been passed on for countless generations. Just like stories and legends, the 
games people play say a lot about their culture. Sharing games with people all around the world is indeed an ideal way to learn about other people and teach them about you.</BLOCKQUOTE>

</TD></TR>
</TABLE></CENTER>
<P>
<H3><A NAME="WebBasedversusNonWebBasedGames"><B>Web-Based versus
Non-Web Based Games</B></A></H3>
<P>
When it comes to the Internet, there are really two different
kinds of games: Web games and non-Web games. Both types of games
can run networked over the Internet, but only Web games have any
dependency on the Web. Non-Web games are games that run networked
across the Internet but have no connection to Web pages. Furthermore,
non-Web games are typically available only for a single platform
or a limited number of platforms. It is important for you to understand
the distinction between Web games and non-Web games. Figure 1.1
shows an example of a networked non-Web game.
<P>
As you can see in Figure 1.1, the game players are connected in
a network game directly with the Internet. There is no mention
of the Web because the Web has nothing to do with non-Web games.
Players in a non-Web game are only responsible for establishing
an Internet connection and running the independent game program
appropriately.
<P>
<A HREF="f1-1.gif" ><B>Figure 1.1 :</B> <I>A networked Internet game.</I></A>
<P>
<CENTER><TABLE BORDERCOLOR=#000000 BORDER=1 WIDTH=80%>
<TR><TD><B>Note</B></TD></TR>
<TR><TD WIDTH=581>
<BLOCKQUOTE>
You are probably already familiar with some of the more popular non-Web games such as DOOM and CivNet. These games provide a means to play with other players networked over the Internet, but they have no association with the Web.</BLOCKQUOTE>

</TD></TR>
</TABLE></CENTER>
<P>
<P>
Web games, on the other hand, are platform-independent games that
are either launched from or run within the confines of a Web page,
and might or might not have networking features. Because the Web
itself is built on the Internet, it goes without saying that Web
games that are networked use the Internet for networking. Therefore,
Web games can be considered platform-independent Internet games
that run from or within the confines of a Web page. In this way,
Web games are really just a specific type of Internet game. Figure
1.2 shows the relationship between Web games and how they run
on the Internet.
<P>
Figure 1.2 shows a total of six players involved in four different
Web games. Three of the games are non-networked Web games, meaning
that the players can't interact with other players over the Internet;
the fourth game is a networked Web game involving three different
players. These three players are able to play the game together
and interact with each other via their Web connection in real
time.
<P>
<A HREF="f1-2.gif" ><B>Figure 1.2 :</B> <I>Web games running both singly and networked over the Internet.</I></A>
<P>
You might be wondering what the significance of a game running
inside a Web page is. Integrating games into the Web environment
is yet another step toward unifying media on the Internet. The
ultimate technical goal of the Web, at least in my humble opinion,
is to merge all the disparate media types present on computers
into a functionally single presence. In doing so, Web users can
seamlessly peruse different media types in conjunction with one
another, resulting in a more complete and fulfilling experience.
<P>
Games can be considered their own media type, because of their
unique system requirements. In actuality, games are a merger of
other media types such as graphics, sound, and animation. Integrating
games into Web pages further blurs the line between static and
interactive content. The real world is highly interactive, and
the more interactive the Web becomes, the more natural it will
feel to human users. Likewise, game playing will eventually become
a standard usage of the Web.
<H2><A NAME="NonJavaBasedGames"><B><FONT SIZE=5 COLOR=#FF0000>Non-Java
Based Games</FONT></B></A></H2>
<P>
There are already a variety of gaming environments on the Internet
carving out the future of gaming. Some of these environments are
Web-based, whereas others have little dependence on the Web. They
are all dependent on client software running on a particular platform.
Nevertheless, they are worth checking out because they are a solid
sign of the changing climate surrounding the commercial game community
and how it addresses the Internet. First, let's take a look at
the Internet game services that don't rely on Java technology.
<P>
<CENTER><TABLE BORDERCOLOR=#000000 BORDER=1 WIDTH=80%>
<TR><TD><B>Note</B></TD></TR>
<TR><TD>
<BLOCKQUOTE>
Most of the non-Java based Internet game services don't actually develop their own games. They typically allow you to play existing commercial games having Internet support. The role of the service is mainly to provide a standard means to connect with 
other players and correlate playing the games.</BLOCKQUOTE>

</TD></TR>
</TABLE></CENTER>
<P>
<P>
The following are some of the more popular Internet game services
that aren't based on Java:
<UL>
<LI>Mpath
<LI>Cyber Warrior Network
<LI>ImagiNation Network
<LI>Total Entertainment Network
<LI>Outland
<LI>Sim-Net
</UL>
<H3><A NAME="Mpath"><B>Mpath</B></A></H3>
<P>
Mpath Interactive has announced plans for a summer, 1996 release
of a Web-based game service called Mplayer, which promises to
&quot;bring the excitement of real-time multiplayer gaming to
the Internet's World Wide Web for the first time.&quot; Mplayer
is pc-based and plans to offer games from well-known game publishers
aimed at adult gamers. Mpath also plans to have contests, tournaments,
and special events all oriented toward gaming and leisure interests.
<P>
The Mplayer service will be speech-enabled so that players will
be able to share verbal dialog as they play. In addition, the
service will provide a general chat area for post-game conversation
and strategic planning. The Mpath Web site is located at <TT><A HREF="http://www.mpath.com">http://www.mpath.com</A></TT>,
and is shown in Figure 1.3.
<P>
<A HREF="f1-3.gif" ><B>Figure 1.3 :</B> <I>The Mpath Web site.</I></A>
<H3><A NAME="CyberWarriorNetwork"><B>Cyber Warrior Network</B></A>
</H3>
<P>
The Cyber Warrior Network is an Internet game service currently
focusing on a single game, Rubies of Eventide. Rubies of Eventide
is a pc-based multiplayer 3-D fantasy adventure game that has
been developed exclusively for Internet play via the Cyber Warrior
Network. For more information about the Cyber Warrior Network
and Rubies of Eventide, check out its Web site at </TT><A HREF="http://www.cyberwar.com">http://www.cyberwar.com</A></TT>
(see Figure 1.4).
<P>
<A HREF="f1-4.gif" ><B>Figure 1.4 :</B> <I>The Cyber Warrior Network Web site.</I></A>
<H3><A NAME="ImagiNationNetwork"><B>ImagiNation Network</B></A>
</H3>
<P>
Another pc-based gaming service, the ImagiNation Network, sports
more than 40 multiplayer games and hundreds of chat rooms, bulletin
boards, and tournaments. The ImagiNation Network even has an e-mail
list and newsletter to keep its members informed. To find out
more, go to its Web site at <TT><A HREF="http://www.inngames.com">http://www.inngames.com</A></TT>
(see Figure 1.5).
<P>
<A HREF="f1-5.gif" ><B>Figure 1.5 : </B><I>The ImagiNation Network Web site.</I></A>
<H3><A NAME="TotalEntertainmentNetwork"><B>Total Entertainment
Network</B></A></H3>
<P>
The Total Entertainment Network (TEN) is one of the more promising
Internet game services, because of its connection with established
commercial game publishers. Several major companies in the game
industry have signed on with TEN, some of them exclusively. The
list currently includes Apogee/3D Realms, Maxis, MicroProse, SimTex,
Spectrum Holobyte, and SSI. For more information on the Total
Entertainment Network, look at its Web site, which is located
at <TT><A HREF="http://www.ten.net">http://www.ten.net</A></TT> (see
Figure 1.6).
<P>
<A HREF="f1-6.gif" ><B>Figure 1.6 : </B><I>The Total Entertainment Network Web site.</I></A>
<H3><A NAME="Outland"><B>Outland</B></A></H3>
<P>
Outland is a Macintosh-based Internet gaming service offering
multiplayer games such as Chess, Go, Backstab, Reversi, and the
popular space strategy game, Spaceward Ho! Outland also includes
chat rooms and the capability to play multiple games at once.
For the latest scoop on Outland, visit its Web site at <TT><A HREF="http://www.outland.com">http://www.outland.com</A></TT>
(see Figure 1.7).
<P>
<A HREF="f1-7.gif" ><B>Figure 1.7 : </B><I>The Outland Web site.</I></A>
<H3><A NAME="SimNet"><B>Sim-Net</B></A></H3>
<P>
Sim-Net is the only Internet gaming service mentioned here that
supports both pcs and Macintoshes. Sim-Net includes a chat feature
as well as organized tournaments. For more information about Sim-Net,
check out its Web site at <TT><A HREF="http://www.simnet1.com">http://www.simnet1.com</A></TT>
(see Fig-ure 1.8).
<P>
<A HREF="f1-8.gif" ><B>Figure 1.8 : </B><I>The Sim-Net Web site.</I></A>
<H2><A NAME="JavaBasedWebGames"><B><FONT SIZE=5 COLOR=#FF0000>Java-Based
Web Games</FONT></B></A></H2>
<P>
Along with the Internet game services that don't rely on the Java
technology, there are already a few online games and services
based on Java. These games are good examples of the excitement
Java has already generated in an amazingly short amount of time.
They are also interesting in how they each handle the details
of integrating games into the Web page environment.
<P>
The following are some of these Java-based Web games and services:
<UL>
<LI>Avalon
<LI>Internet MahJong Server
<LI>iChess
<LI>Unearthed
</UL>
<H3><A NAME="Avalon"><B>Avalon</B></A></H3>
<P>
Avalon is a multiplayer role-playing game that includes both human-controlled
characters and imaginary computer-controlled creatures. Although
the core gaming environment itself is not based on Java, there
is a Java client that interacts with the central game server.
Avalon is presented as an entire world that evolves as new players
join and contribute their actions. The Avalon Web site, which
is shown in Figure 1.9, is located at <TT><A HREF="http://www.avalon-rpg.com">http://www.avalon-rpg.com</A></TT>.
<P>
<A HREF="f1-9.gif" ><B>Figure 1.9 : </B><I>The Avalon Web site.</I></A>
<H3><A NAME="InternetMahJongServer"><B>Internet MahJong Server</B></A>
</H3>
<P>
The Internet MahJong Server (IMS) is an entirely Java-based game
server that provides virtual gambling rooms for the popular Chinese
tile game MahJong. The fact that it is entirely built on Java
means that players using a variety of different types of computer
systems can seamlessly play games together. IMS is located at
<TT><A HREF="http://www.real-time.com/MJ/mj.html">http://www.real-time.com/MJ/mj.html</A></TT>
and is shown in Figure 1.10.
<P>
<A HREF="f1-10.gif" ><B>Figure 1.10 : </B><I>The MahJong Server Web site.</I></A>
<H3><A NAME="iChess"><B>iChess</B></A></H3>
<P>
iChess is a multiplayer chess game written entirely in Java. It
includes a chat window and a lot of freedom with regard to how
a game is carried out. For example, you can play live with another
player or you can connect and make a move when the other player
is not connected. In the latter case, the game progresses while
players make moves at their own leisure. To try out a game of
iChess, check it out at <TT><A HREF="http://www.ichess.com">http://www.ichess.com</A></TT>
(see Figure 1.11).
<P>
<A HREF="f1-11.gif" ><B>Figure 1.11 : </B><I>The iChess Web site.</I></A>
<H3><A NAME="Unearthed"><B>Unearthed</B></A></H3>
<P>
Unearthed is a multiplayer fantasy world that enables different
players to interact together in real time. It is written entirely
in Java and demonstrates the usage of a high level of graphical
content in Java. Although it is still in its early development
stages, Unearthed is worth checking out. It is located at <TT><A HREF="http://www.mit.edu/people/twm/unearthed">http://www.mit.edu/people/twm/unearthed</A></TT>
and is shown in Figure 1.12.
<P>
<A HREF="f1-12.gif" ><B>Figure 1.12 : </B><I>The Unearthed Web site.</I></A>
<H2><A NAME="Summary"><B><FONT SIZE=5 COLOR=#FF0000>Summary</FONT></B></A>
</H2>
<P>
Today you learned about the current climate surrounding the Internet
and the World Wide Web and how it impacts gaming. You found out
some of the aspects of the Web that are appealing to game players,
which are in turn causing a rush for game developers to move their
games to the Web. This discussion gave you some insight into why
the Web is so important to the future of games.
<P>
The second half of today's lesson focused on some of the more
popular Web sites that support online gaming. Some of them are
strictly Internet-based and require platform-specific client applications,
whereas others consist of full-blown Java games. These Web sites
give you a good place to start when you are assessing the state
of games on the Web. Tomorrow you move on to learning more specifics
about how Java impacts Web games.
<H2><A NAME="QA"><B><FONT SIZE=5 COLOR=#FF0000>Q&amp;A</FONT></B></A>
<BR>
</H2>

<TABLE>
<TR VALIGN=TOP><TD WIDTH=50><B>Q</B></TD><TD ><B>Are interactive commercial Web games poised to replace traditional games as we know them?</B>
</TD></TR>
<TR VALIGN=TOP><TD WIDTH=50><B>A</B></TD><TD>Maybe someday, but not in the immediate future. You can expect to see more games supporting the Internet as a networking medium for multiple players, but games based solely on the Web are still a ways off. This 
is mainly due to the fact that programming languages supporting Web-based games, such as Java, are still in their infancy. You learn a lot more about this in tomorrow's lesson.
</TD></TR>
<TR VALIGN=TOP><TD WIDTH=50><B>Q</B></TD><TD><B>Are there any other obstacles slowing the evolution of the Web as a medium for gaming?</B>
</TD></TR>
<TR VALIGN=TOP><TD WIDTH=50><B>A</B></TD><TD>Yes, the other big obstacle facing Web games is the bandwidth limitation imposed by modem connections. Because most Web users connect to the Web over a relatively slow modem connection, there are very real 
limitations on how much game data can be sent during a game.
</TD></TR>
<TR VALIGN=TOP><TD WIDTH=50><B>Q</B></TD><TD><B>Because Web games are online, and therefore readily available without any extra software, how do game companies make money from them?</B>
</TD></TR>
<TR VALIGN=TOP><TD WIDTH=50><B>A</B></TD><TD>The current trend is toward charging a monthly membership fee for belonging to an online game service. This membership typically entitles you to a certain number of hours and the option to play a variety of 
different games. It's not yet clear whether this arrangement will work as Web games get more established. I'm not sure how many game players like the idea of paying a monthly bill for a gaming service, even if it ends up averaging to be around the same 
cost of buying games outright.
</TD></TR>
</TABLE>
<P>
<H2><A NAME="Workshop"><B><FONT SIZE=5 COLOR=#FF0000>Workshop</FONT></B></A>
</H2>
<P>
The Workshop section provides questions and exercises to help
solidify the material you learned today. Try to answer the questions
and go over the exercises before moving on to tomorrow's lesson.
You'll find the answers to the questions in appendix A, &quot;Quiz
Answers.&quot;
<H3><A NAME="Quiz"><B>Quiz</B></A></H3>
<OL>
<LI>What technology is poised to bring interactive gaming to the
Web?
<LI>What is potentially the most intriguing aspect of writing
games for the Web?
</OL>
<H3><A NAME="Exercises"><B>Exercises</B></A></H3>
<OL>
<LI>Try out a few of the Internet and Web-based games listed in
today's lesson.
<LI>Think of some of some of your favorite games and how they
might scale to the Web environment. Does the Web stand a chance
of enhancing their playability?
</OL>
<P>
<HR WIDTH="100%"></P>

<CENTER><P><A HREF="ch1gla.htm"><IMG SRC="pc.gif" BORDER=0 HEIGHT=88 WIDTH=140></A><A HREF="index.htm"><IMG SRC="hb.gif" BORDER=0 HEIGHT=88 WIDTH=140></A><A HREF="#CONTENTS"><IMG SRC="cc.gif" BORDER=0 HEIGHT=88 WIDTH=140></A><A HREF="ch2.htm"><IMG 
SRC="nc.gif" BORDER=0 HEIGHT=88 WIDTH=140></A></P></CENTER>

<P>
<HR WIDTH="100%"></P>

</BODY>
</HTML>

